#include <REGX52.H>

void Timer0_Init()//定时器1ms
{
	TF0=0;//定时器0的溢出位一开始置0
	TR0=1;//定时器0开始工作
	//TMOD=0x01;//选择模式1开始工作，C/T作为定时器选中,这个时候无法同时配置T1定时器，所以可以用另一种
	TMOD &= 0xF0;		//设置定时器模式
	TMOD |= 0x01;		//设置定时器模式
	EA=1;
	ET0=1;
	PT0=0;//这三个都是中断寄存器的配置对定时器T0的配置、
	/*因为定时器是16位，就是65535，然后取1MHz（分频后），就是1us，就是65535us，如果我们取1ms为交界线，那么
	初始话就是定时器取64535，而他高八位是256，低八位也是256，所以初取高八位，取余剩下低八位
	就比如 123，以100为界限，123/100 = 1，就是高位，123%100=23，就是低位*/
	TL0 = 0x66;		//设置定时初值
	TH0 = 0xFC;		//设置定时初值
	
}

/*中断以1s位界限
void Timer0_Rountine() interrupt 1 //这个是中断号，就是相当于是你T0发生中断了，就会跳到这个地方来，interrupt 1就是T0的中断号，前面的名字是自己取的
{
	static unsigned int Timer0_count=0;
	TH0=64535/256;//重新初始化
	TL0=64535%256;
	Timer0_count++;
	if(Timer0_count>=1000)//1s
	{
		Timer0_count=0;
	}
}
*/